package com.rds.workflow.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.rds.common.core.domain.BaseEntity;

import java.util.Date;
import java.util.List;

public class RdaWfTask extends BaseEntity {

    /** 任务id */
    private Long id;


    /** 流程id */
    private Long workflowid;

    /** 节点id */
    private Long nodeid;

    /** 用户ID */
    private Long userId;

    /** 角色ID */
    private Long roleId;

    /** 任务名称 */
    private String taskName;

    /** 任务描述 */
    private String description;

    /** 审批意见 */
    private String approveExplain;

    /** 操作 1-同意 2-驳回 */
    private String operId;

    /** 所有者 */
    private Long ownerid;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /** 修改时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date modifyTime;

    /** 类型Id */
    private Long typeid;

    /** 策略Id */
    private Long policyid;

    /** 状态id */
    private Long stateid;

    /** 状态(0正常,1停用) 默认0 */
    private String status;

    /** 完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date accomplishTime;

    private String refuseType;

    private String toolbarType;

    /** 操作类型同意 */
    private String approve;

    /** 操作类型拒绝 */
    private String reject;

    /** 是否转派 */
    private boolean transfer;

    /** 原用户id */
    private Long originalId;

    /** 流程名 */
    private String workflowName;

    /** 流程关联对象名 */
    private List<String> objectNameList;

    /** 流程关联对象名 */
    private String objectName;

    /** 耗时时长（天） */
    private String costTimeDay;

    /** 拒绝后跳过完成节点 */
    private boolean skipComplete;

    /** 暂停 */
    private boolean rejectSuspend;

    /** 开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;

    /** 开始时间页面显示 */
    private String ssStartTime;

    /** 节点名 */
    private String nodeName;

    /** 节点序号 */
    private String level;

    //2022-02-10 新增代理类型 start
    /** 代理类型 */
    private String agentTypeid;
    //2022-02-10 新增代理类型 end

    /** 编码 */
    private String taskCode;

    /** 动态跳转的url*/
    private String url;

    /** 页面参数*/
    private String urlParams;

    /** 前端需要用到 */
    private String name;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getWorkflowid() {
        return workflowid;
    }

    public void setWorkflowid(Long workflowid) {
        this.workflowid = workflowid;
    }

    public Long getNodeid() {
        return nodeid;
    }

    public void setNodeid(Long nodeid) {
        this.nodeid = nodeid;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Long getRoleId() {
        return roleId;
    }

    public void setRoleId(Long roleId) {
        this.roleId = roleId;
    }

    public String getTaskName() {
        return taskName;
    }

    public void setTaskName(String taskName) {
        this.taskName = taskName;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getApproveExplain() {
        return approveExplain;
    }

    public void setApproveExplain(String approveExplain) {
        this.approveExplain = approveExplain;
    }

    public String getOperId() {
        return operId;
    }

    public void setOperId(String operId) {
        this.operId = operId;
    }

    public Date getModifyTime() {
        return modifyTime;
    }

    public void setModifyTime(Date modifyTime) {
        this.modifyTime = modifyTime;
    }

    public Long getOwnerid() {
        return ownerid;
    }

    public void setOwnerid(Long ownerid) {
        this.ownerid = ownerid;
    }

    public Long getTypeid() {
        return typeid;
    }

    public void setTypeid(Long typeid) {
        this.typeid = typeid;
    }

    public Long getPolicyid() {
        return policyid;
    }

    public void setPolicyid(Long policyid) {
        this.policyid = policyid;
    }

    public Long getStateid() {
        return stateid;
    }

    public void setStateid(Long stateid) {
        this.stateid = stateid;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public Date getAccomplishTime() {
        return accomplishTime;
    }

    public void setAccomplishTime(Date accomplishTime) {
        this.accomplishTime = accomplishTime;
    }

    public String getRefuseType() {
        return refuseType;
    }

    public void setRefuseType(String refuseType) {
        this.refuseType = refuseType;
    }

    public String getToolbarType() {
        return toolbarType;
    }

    public void setToolbarType(String toolbarType) {
        this.toolbarType = toolbarType;
    }

    public String getApprove() {
        return approve;
    }

    public void setApprove(String approve) {
        this.approve = approve;
    }

    public String getReject() {
        return reject;
    }

    public void setReject(String reject) {
        this.reject = reject;
    }

    public boolean isTransfer() {
        return transfer;
    }

    public void setTransfer(boolean transfer) {
        this.transfer = transfer;
    }

    public Long getOriginalId() {
        return originalId;
    }

    public void setOriginalId(Long originalId) {
        this.originalId = originalId;
    }

    public String getWorkflowName() {
        return workflowName;
    }

    public void setWorkflowName(String workflowName) {
        this.workflowName = workflowName;
    }

    public List<String> getObjectNameList() {
        return objectNameList;
    }

    public void setObjectNameList(List<String> objectNameList) {
        this.objectNameList = objectNameList;
    }

    public String getObjectName() {
        return objectName;
    }

    public void setObjectName(String objectName) {
        this.objectName = objectName;
    }

    public String getCostTimeDay() {
        return costTimeDay;
    }

    public void setCostTimeDay(String costTimeDay) {
        this.costTimeDay = costTimeDay;
    }

    public boolean isSkipComplete() {
        return skipComplete;
    }

    public void setSkipComplete(boolean skipComplete) {
        this.skipComplete = skipComplete;
    }

    public boolean isRejectSuspend() {
        return rejectSuspend;
    }

    public void setRejectSuspend(boolean rejectSuspend) {
        this.rejectSuspend = rejectSuspend;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public String getSsStartTime() {
        return ssStartTime;
    }

    public void setSsStartTime(String ssStartTime) {
        this.ssStartTime = ssStartTime;
    }

    @Override
    public Date getCreateTime() {
        return createTime;
    }

    @Override
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getNodeName() {
        return nodeName;
    }

    public void setNodeName(String nodeName) {
        this.nodeName = nodeName;
    }

    public String getLevel() {
        return level;
    }

    public void setLevel(String level) {
        this.level = level;
    }

    public String getAgentTypeid() {
        return agentTypeid;
    }

    public void setAgentTypeid(String agentTypeid) {
        this.agentTypeid = agentTypeid;
    }

    public String getTaskCode() {
        return taskCode;
    }

    public void setTaskCode(String taskCode) {
        this.taskCode = taskCode;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public String getUrlParams() {
        return urlParams;
    }

    public void setUrlParams(String urlParams) {
        this.urlParams = urlParams;
    }
}
